<?php
class addnew_controller_addnew extends Base
{
    protected $service;
    public function __construct()
    {
        parent::__construct();
        $this->service = new serviceQuery();
        $this->view->assign('site_address', SITE_ADDRESS);
    }

    public function init()
    {
        if($user = $this -> chcekLog())
        {
            $where = array();
            $where['id'] = $user['id'];
            $userData = $this -> common -> select('users', '*', $where);
            $this -> view -> assign('filtr', $userData[0]);
        }
        $this -> setWhere('2', 'Nowa usługa', 'zaproponuj-usługi/');
        switch($_GET['step'])
        {
            case '2':
            {
                $this -> secondStep();
                break;
            }
            case '3':
            {
                $this -> thirdStep();
                break;
            }
            default:
            {
                $this -> firstStep(); 
                break;
            }
        } 
    }
    
    private function firstStep()
    { 
        $this -> setWhere('3', 'Dodaj nową usługę', 'zaproponuj-usługi/');
        $where = array();
        $where['parent'] = '0';
        if(isset($_SESSION[PREFIX]['filtr']['category']) && !isset($_SESSION[PREFIX]['message']['form']['category'])){
            $mainCategories = $this->service->getCategoriesByCategoryId($_SESSION[PREFIX]['filtr']['category']);
        }else{
            $mainCategories = $this -> common -> select('categories', '*', $where);
        }

        $this -> view -> assign('mainCategories', $mainCategories); 
        $this -> view -> assign('step', '1');
    }
    
    private function secondStep()
    { 
        if(isset($_POST['categorySelectThird'])){
            $_POST['category'] = $_POST['categorySelectThird'];
        }else if(isset($POST['categorySelectSec'])){
            $_POST['category'] = $_POST['categorySelectSec'];
        }else{
            $_POST['category'] = isset($_POST['categorySelectOne'])?$_POST['categorySelectOne']: 0;
        }
        if($this->service->validate($_POST)){
            $re = $this->service->add($_POST);

            if($re)
            {
                $_SESSION[PREFIX]['message']['content'] = "Usługa została dodana. Konto zostało stworzone. Login to Twój email, a hasło tymczsowe to równiez Twój email.:) Aby usługa była widoczna musisz aktywować konto. Na mailu masz szczegóły.";    
            }
            else
            {
                $_SESSION[PREFIX]['message']['content'] = "Usługa została dodana.";    
            }
            
            $_SESSION[PREFIX]['message']['type'] = "success";
            
            $this -> FriendlyLink(SITE_ADDRESS);

        }else{
            $_SESSION[PREFIX]['message']['content'] = "Proszę wypełnij poprawnie formularz";
            $_SESSION[PREFIX]['message']['type'] = "error";
            $this -> FriendlyLink(SITE_ADDRESS.'zaproponuj-usługi/');
        }

    }
    
    public function thirdStep()
    {
        $this -> setWhere('3', 'Dane podstawowe', 'zaproponuj-usługi/3');
        $this -> view -> assign('step', '3');    
    }

}
?>
